//#define  _CRT_SECURE_NO_WARNINGS
//#include <iostream>
//#include <vector>
//#include<algorithm>
//using namespace std;
//
// struct ListNode {
//     int val;
//     ListNode *next;
//     ListNode() : val(0), next(nullptr) {}
//    ListNode(int x) : val(x), next(nullptr) {}
// ListNode(int x, ListNode *next) : val(x), next(next) {}
//};
// 
//class Solution {
//public:
//    ListNode* sortList(ListNode* head)
//    {
//        vector<int> v1;
//        ListNode* current = head;
//        while (current != nullptr)
//        {
//            v1.push_back(current->val);
//            current = current->next;
//        }
//        current = head;
//        sort(v1.begin(), v1.end());
//        for (auto& element : v1)
//        {
//            current->val = element;
//            current = current->next;
//        }
//        return head;
//    }
//};